1. Technical Field of the Invention
This invention generally relates to the field of communication systems and, more particularly, to a method and apparatus for correcting packet errors within a sequence of information bearing packets, such as jitter and frame erasure in packet voice communication systems.
2. Description of the Background Art
The conventional means of communicating between a calling and called party is to transmit voice signals from the subscriber to a serving central office as analog signals. Between the calling party's central office and the called party's central office, the voice signals are digitized. A T1 carrier is used between the calling party's central office and the called party's central office to communicate the digitized voice traffic using time division multiplexing (TDM). Each one of the 24 channels of the T1 is a 64 kb/s channel. However, the use of TDM is inefficient because 64 kb/s of silence is communicated as well as 64 kb/s of speech. In addition, when there is no caller on the line, a T1 channel is inefficiently utilized because no information is being communicated; yet the bandwidth of that channel is still being utilized.
The packetization of voice traffic provides an efficient means of communicating voice traffic because the bandwidth of a transmission medium is only utilized when traffic is being sent. However, there are problems with communicating voice as packetized traffic. The first problem is packet loss, which is also known as frame erasure. Packet loss occurs when a packet does not arrive or arrives to late to be used and is therefore discarded. A second problem is jitter, which occurs because packets have different transit times. Packet loss and jitter can result in a low quality audio signal.
A typical technique to resolve packet jitter and reduce loss is to store the arriving packets in buffers until substantially all of the packets arrive. For instance, if the average time needed for a packet to get across a network is 50 ms, but the slowest 1% of the packets take more than 200 ms, then the delay is set to 200 ms so that 99% of the packets will arrive in time to be played. The other 1% of the packets will be discarded when they arrive. The delay is accomplished by storing the packets that arrived within 200 ms in a “jitter buffer”, a first in first out (FIFO) queue where the packets are kept before playout. Since all packets must be delayed to accommodate the slowest packets, most of the packets spend a great deal of time waiting in the jitter buffer to be played. The total latency is the difference between the transmission time of the packets and the play out time, which is approximately equal to the maximum time between transmission and receive times.
However, such techniques to handle jitter and frame erasure do not work well above packet losses of 10% because the human ear is sensitive to delays and/or noise in speech. For instance, when a telephone user is talking to another party delays and/or noise can prove to be irritating to both parties. The speech signal may meet the required quality measurements, but the telephone user on a call can still detect delays in speech and noise.